package com.competitions.videoedithelper.dao;

import com.competitions.videoedithelper.entity.AudioInfo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author 盛旭雯
 */
@Repository
public interface AudioInfoDao {
    /**
     * 插入分离出的音频
     * @param audioInfo 音频实例
     */
    void insertAudioInfo(AudioInfo audioInfo);

    /**
     * 查找音频
     * @param audioId 音频id
     * @return AudioInfo
     */
    AudioInfo selectAudio(@Param("audioId") int audioId);

    /**
     * 查找源音频
     * @param videoId 视频id
     * @param priorId 上一个音频id
     * @return AudioInfo
     */
    AudioInfo selectAudio2(@Param("videoId") int videoId,@Param("priorId") int priorId);

    /**
     * 根据视频id查询音频的地址
     * @param videoId 视频id
     * @return audioUrl
     */
    String selectAudioUrl(@Param("videoId")int videoId);

    /**
     * 查找某个视频的所有修改后的音频
     * @param videoId 视频id
     * @return 修改后的音频列表
     */
    List<AudioInfo> selectEditedAudioInfos(@Param("videoId")int videoId);

    /**
     * 删除修改后的音频
     * @param audioId 音频id
     */
    void deleteAudioInfo(@Param("audioId")int audioId);
 }
